package java_learn.java_jinjie.DataStructure;

/**
 * 可变参数:是JDK1.5之后出现的新特性
 * 使用前提:
 * 当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数.
 * 使用格式:定义方法时使用
 * 修饰符 返回值类型 方法名(数据类型...变量名){}
 * 可变参数的原理:
 * 可变参数底层就是一个数组,根据传递参数个数不同,会创建不同长度的数组,来存储这些参数
 * 传递的参数个数,可以是0个(不传递),1,2...多个
 */
public class DemoVArArgs {
    public static void main(String[] args) {
        System.out.println(add(3, 4, 5, 6));
    }

    public static int add(int... arr) {
        int sum = 0;
        for (int a : arr) {
            sum += a;
        }
        return sum;
    }
}
